package com.ruoyi.system.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.Date;

public class PetAdoptionVo extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 申请ID */
    private Long adoptionId;

    /** 宠物ID */
    @Excel(name = "宠物ID")
    private Long petId;

    /** 宠物名称 */
    @Excel(name = "宠物名称")
    private String petName;

    /** 宠物图片 */
    private String image;

    /** 宠物年龄 */
    @Excel(name = "宠物年龄")
    private Integer age;

    /** 宠物性别（0男 1女） */
    @Excel(name = "宠物性别", readConverterExp = "0=公,1=母")
    private String gender;

    /** 宠物分类 */
    private String categoryName;

    /** 用户ID */
    @Excel(name = "用户ID")
    private Long userId;

    /** 用户昵称 */
    @Excel(name = "申请人")
    private String userName;

    /** 联系电话 */
    @Excel(name = "联系电话")
    private String phone;

    /** 居住地址 */
    @Excel(name = "居住地址")
    private String address;

    /** 申请理由 */
    @Excel(name = "申请理由")
    private String reason;

    /** 状态（0待审核 1通过 2拒绝） */
    @Excel(name = "状态", readConverterExp = "0=待审核,1=通过,2=拒绝")
    private String status;

    /** 申请时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "申请时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date applyTime;

    /** 审批人 */
    @Excel(name = "审批人")
    private String approveBy;

    /** 审批时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "审批时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date approveTime;

    /** 审批意见 */
    @Excel(name = "审批意见")
    private String comment;

    public PetAdoptionVo() {
    }

    public PetAdoptionVo(Long adoptionId, Long petId, String petName, String image, Integer age, String gender, String categoryName, Long userId, String userName, String phone, String address, String reason, String status, Date applyTime, String approveBy, Date approveTime, String comment) {
        this.adoptionId = adoptionId;
        this.petId = petId;
        this.petName = petName;
        this.image = image;
        this.age = age;
        this.gender = gender;
        this.categoryName = categoryName;
        this.userId = userId;
        this.userName = userName;
        this.phone = phone;
        this.address = address;
        this.reason = reason;
        this.status = status;
        this.applyTime = applyTime;
        this.approveBy = approveBy;
        this.approveTime = approveTime;
        this.comment = comment;
    }

    public Long getAdoptionId() {
        return adoptionId;
    }

    public void setAdoptionId(Long adoptionId) {
        this.adoptionId = adoptionId;
    }

    public Long getPetId() {
        return petId;
    }

    public void setPetId(Long petId) {
        this.petId = petId;
    }

    public String getPetName() {
        return petName;
    }

    public void setPetName(String petName) {
        this.petName = petName;
    }

    public String getImage() {
        return image;
    }

    public void setImage(String image) {
        this.image = image;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public String getCategoryName() {
        return categoryName;
    }

    public void setCategoryName(String categoryName) {
        this.categoryName = categoryName;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getReason() {
        return reason;
    }

    public void setReason(String reason) {
        this.reason = reason;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public Date getApplyTime() {
        return applyTime;
    }

    public void setApplyTime(Date applyTime) {
        this.applyTime = applyTime;
    }

    public String getApproveBy() {
        return approveBy;
    }

    public void setApproveBy(String approveBy) {
        this.approveBy = approveBy;
    }

    public Date getApproveTime() {
        return approveTime;
    }

    public void setApproveTime(Date approveTime) {
        this.approveTime = approveTime;
    }

    public String getComment() {
        return comment;
    }

    public void setComment(String comment) {
        this.comment = comment;
    }
}
